using System;
using System.Collections.Generic;
using Myotragus.Data.Containers;
using Myotragus.Data.Domain;

namespace Myotragus.Data.Tests.Mocks
{
	public class MockEntities : IEntitiesRegistrar
	{
		public TEntity Create<TEntity>() where TEntity : IEntity
		{
			throw new NotImplementedException();
		}

		public IEntity Create(Type tEntity)
		{
			throw new NotImplementedException();
		}

		public TEntity Create<TEntity>(object prototype) where TEntity : IEntity
		{
			throw new NotImplementedException();
		}

		public IEntity Create(Type tEntity, object prototype)
		{
			throw new NotImplementedException();
		}

		public Type ResolveType(Type @interface)
		{
			throw new NotImplementedException();
		}

		public IEnumerable<Type> Interfaces { get; private set; }
		public ITypeRegistrar RegisterFor(Type implementation, IEnumerable<Type> interfaces)
		{
			throw new NotImplementedException();
		}

		public ITypeRegistrar RegisterFor(Type implementation, params Type[] interfaces)
		{
			throw new NotImplementedException();
		}

		public ITypeRegistrar RegisterForAll(IEnumerable<Type> implementations)
		{
			throw new NotImplementedException();
		}

		public ITypeRegistrar RegisterForAll(params Type[] implementations)
		{
			throw new NotImplementedException();
		}

		public ITypeRegistrar RegisterForDefault(IEnumerable<Type> implementations)
		{
			throw new NotImplementedException();
		}

		public ITypeRegistrar RegisterForDefault(params Type[] implementations)
		{
			throw new NotImplementedException();
		}
	}
}